:host {
  display: flex;
}

.description {
  flex: 0 0 28rem;
  margin: 0 auto;
  max-width: 100%;
}

.heading {
  color: #2a344e;
  font-size: 4.75rem;
  font-style: normal;
  font-weight: 800;
  line-height: 4.75rem;

  margin-bottom: 1.5rem;
}

.pre-heading {
  display: block;
  margin-bottom: 0.5rem;

  color: #9fa9bd;
  font-size: 1.5rem;
  font-style: normal;
  font-weight: normal;
  line-height: 2.5rem;
  text-transform: uppercase;
}

.text {
  color: #9fa9bd;
  font-size: 1rem;
  line-height: 1.75rem;
}

.learn-more {
  margin-top: 2.5rem;
}

.images {
  display: none;
}

@media screen and (min-width: 50em) {
  .description {
    margin-left: auto;
  }

  .images {
    display: block;
    flex: 0 0 60%;
    padding-bottom: 43%;
    position: relative;
  }

  .theme-colors {
    position: absolute;
    top: -18%;
    right: -35%;

    height: auto;
    width: 103%;
  }

  .components {
    position: absolute;
    top: 42%;
    right: -9%;

    height: auto;
    width: 100%;
  }
}
